package com.woniu.common;

import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.OutputFile;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class AutoGenerator {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("t_dating_game");
        list.add("t_dating_concern");
        list.add("t_dating_dynamic");
        list.add("t_dating_comment");
        list.add("t_dating_info");
        list.add("t_dating_like");
        for (String table: list) {


            FastAutoGenerator.create("jdbc:mysql://localhost:3306/life_dating?characterEncoding=utf8&useSSL=false",
                    "root", "sjx238927")
                    .globalConfig(builder -> {
                        builder.author("玖柒") // 设置作者
                                .enableSwagger() // 开启 swagger 模式
                                .fileOverride() // 覆盖已生成文件
                                .outputDir("D://Life"); // 指定输出目录
                    })
                    .packageConfig(builder -> {
                        builder.parent("com.woniu") // 设置父包名
                                .moduleName(null) // 设置父包模块名
                                .entity("pojo") // 设置实体类的包名
                                .pathInfo(Collections.singletonMap(OutputFile.xml, "D://Life//mapper")); // 设置mapperXml生成路径
                    })
                    .strategyConfig(builder -> {
                        builder.addInclude(table) // 设置需要生成的表名
                                .addTablePrefix("t_"); // 设置过滤表前缀
                        builder.controllerBuilder().enableRestStyle();// 设置restController
                        builder.entityBuilder().enableLombok();
                    })
                    //.templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板，默认的是Velocity引擎模板
                    .execute();

        }

    }
}
